home *** CD-ROM | disk | FTP | other *** search
/ Java Primer Plus / Java Primer Plus (Waite Group Proess)(1996).iso / java_Win / demo / SpreadSheet / CellUpdater.class (.txt) < prev    next >
Encoding:
Java Class File  |  1995-10-12  |  1.6 KB  |  45 lines

  1. import java.io.IOException;
  2. import java.io.InputStream;
  3. import java.io.StreamTokenizer;
  4. import java.net.URL;
  5.  
  6. class CellUpdater extends Thread {
  7.    Cell target;
  8.    InputStream dataStream;
  9.    StreamTokenizer tokenStream;
  10.  
  11.    public CellUpdater(Cell c) {
  12.       super("cell updater");
  13.       this.target = c;
  14.    }
  15.  
  16.    public void run() {
  17.       try {
  18.          this.dataStream = (new URL(this.target.app.getDocumentBase(), this.target.getValueString())).openStream();
  19.          this.tokenStream = new StreamTokenizer(this.dataStream);
  20.          this.tokenStream.eolIsSignificant(false);
  21.  
  22.          while(true) {
  23.             switch (this.tokenStream.nextToken()) {
  24.                case -2:
  25.                   this.target.setTransientValue((float)this.tokenStream.nval);
  26.                   if (!this.target.app.isStopped && !this.target.paused) {
  27.                      this.target.app.repaint();
  28.                   }
  29.                default:
  30.                   try {
  31.                      Thread.sleep(2000L);
  32.                      break;
  33.                   } catch (InterruptedException var1) {
  34.                      return;
  35.                   }
  36.                case -1:
  37.                   this.dataStream.close();
  38.                   return;
  39.             }
  40.          }
  41.       } catch (IOException var2) {
  42.       }
  43.    }
  44. }
  45.